Что я могу делать
Список собран из полномочий книги, а не написан руками (R-SF2): что записано в модели, то и показано.
Откуда у меня эти права
Три источника: по должности, выдано администратором, персонально со сроком. Отзываются они по-разному, и на экране это видно.
Мой журнал
Что я делал, чего мне не хватило и что решили по моим правам. Просмотр своего журнала сам попадает в журнал (R-AU3).
| Когда | Что | Откуда | Результат |
|---|
| Когда | Что не получилось | Не хватило |
|---|
| Когда | Что изменилось | Основание | Кто решил |
|---|
Имя решавшего показано намеренно (Р249): «право отозвано кампанией» без ответа на вопрос «кем» превращает поддержку в расследование — человек всё равно пойдёт спрашивать, но уже через администратора.
Мои заявки
Запросы прав и отказы от прав идут одним движком заявок (R-AR1): статусы, SLA и маршрут общие.
| Заявка | Предмет | Тип | Статус | Кто согласует |
|---|
Контракт экрана — для разработчика Vue/Laravel
Источник данных
Список действий считается на сервере из полномочий (takt-config.json) для текущего пользователя; клиент получает готовый список. Журнал, заявки и решения — данные приложения, отфильтрованные по себе.
Компоненты
| MyActions | props: actions, showRoles; группировка по объекту, спящие помечаются. |
| MyAssignments | три источника прав; действие «сдать» под v-can и с проверкой признака «Непрерывность». |
| MyLog | три вкладки; строка отказа несёт кнопку создания заявки с предзаполнением. |
| MyRequests | тот же движок заявок, что 2.2.3; тип «запрос» / «отказ от права». |
Права на сам экран
Роль SELF: чтение только своих данных, область OWN проверяется на сервере, а не фильтром на клиенте. Экран не должен уметь показать чужие права — это первое, что попробуют.
Чего на экране нет
Чужих прав, выдачи прав себе, редактирования журнала и отказа от профиля с признаком «Непрерывность».